package guowei.common.group;

/**
 * 自定义校验器 ：起到校验功能
 * 该校验器功能是判断status的int值是否在val中，若在则返回true，若不在则返回false
 */

import javax.validation.ConstraintValidator;
import javax.validation.ConstraintValidatorContext;
import java.util.HashSet;

public class StatusShowConstraintValidator implements ConstraintValidator<StatusShow,Integer> {

    private HashSet<Integer> set = new HashSet<Integer>();


//    初始化方法 得到所有vals值
    @Override
    public void initialize(StatusShow constraintAnnotation) {
        int[] vals = constraintAnnotation.vals();
        for (int val:vals) {
            set.add(val);
        }
    }

//    校验方法  判断我们输入的值是否在vals中
    @Override
    public boolean isValid(Integer integer, ConstraintValidatorContext constraintValidatorContext) {
        return set.contains(integer);
    }
}
